package com.zsj.mysql.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 字节手机充值表
 * </p>
 *
 * @author
 * @since
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class DyMobileRecharge implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 请求路径
     */
    private String url;

    /**
     * 字节商⼾编码
     */
    private String appId;

    /**
     * 字节充值订单号
     */
    private String chargeNo;

    /**
     * ⼿机号
     */
    private String mobile;

    /**
     * 运营商编码
     */
    private String carrierCode;

    /**
     * 省份编码
     */
    private String adCode;

    /**
     * 时间戳
     */
    private String timestamp;

    /**
     * 回调地址
     */
    private String notifyUrl;

    /**
     * 产品编码
     */
    private String productDenomination;

    /**
     * 业务类型
     */
    private String bizType;

    /**
     * ⼦业务类型
     */
    private String subBizType;

    /**
     * 供应商编码
     */
    private String supplierCode;

    /**
     * 自己的订单号
     */
    private String channelChargeNo;

    /**
     * 供应商订单号
     */
    private String supplierOrderNo;

    /**
     * 订单状态
     */
    private Integer orderStatus;

    /**
     * 结算⾦额
     */
    private String contractPrice;

    /**
     * 供应商结算⾦额
     */
    private String supplierContractPrice;

    /**
     * 完成时间
     */
    private String finishTime;

    /**
     * 成功时间
     */
    private String successTime;

    /**
     * 原运营商编码
     */
    private String originCarrierCode;

    /**
     * 现运营商编码
     */
    private String currentCarrierCode;

    /**
     * 交易日期
     */
    private Integer txnDate;

    /**
     * 终态日期
     */
    private Integer finishDate;

    /**
     * 返回码
     */
    private String returnCode;

    /**
     * 返回信息
     */
    private String returnMessage;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 通知状态:0-待通知 1-通知成功 2-通知失败
     */
    private Integer notifyStatus;

    /**
     * 通知次数
     */
    private Integer notifyTimes;

    /**
     * 最近一次通知时间
     */
    private LocalDateTime lastNotifyTime;

    /**
     * 重发状态:0-无需重发 1-待重发 2-重发成功
     */
    private Integer reorderStatus;

    /**
     * 重发次数
     */
    private Integer reorderTimes;

    /**
     * 最近一次重发时间
     */
    private LocalDateTime lastReorderTime;

}
